Power of Brute-Force Search in Strongly-Typed Inductive Functional Programming Automation
نویسنده
چکیده
A successful case of applying brute-force search to functional programming automation is presented and compared with a conventional genetic programming method. From the information of the type and the property that should be satisfied, this algorithm is able to find automatically the shortest Haskell program using the set of function components (or library) configured beforehand, and there is no need to design the library every time one requests a new functional program. According to the presented experiments, programs consisted of several function applications can be found within some seconds even if we always use the library designed for general use. In addition, the proposed algorithm can efficiently tell the number of possible functions of given size that are consistent with the given type, and thus can be a tool to evaluate other methods like genetic programming by providing the information of thebaseline performance.
منابع مشابه
Supporting dependently typed functional programming with proof automation and testing
Dependent types can be used to capture useful properties about programs at compile time. However, developing dependently typed programs can be difficult in current systems. Capturing interesting program properties usually requires the user to write proofs, where constructing the latter can be both a difficult and tedious process. Additionally, finding and fixing errors in program scripts can be...
متن کاملAutomation for Dependently Typed Functional Programming
Writing dependently typed functional programs that capture non-trivial program properties, such as those involving membership, ordering and non-linear arithmetic, is difficult in current system due to lack of proof automation. We identify and discuss proof patterns that occur when programming with dependent types and detail how the automation of such patterns allow us to work more comfortably w...
متن کاملA Performance Survey of Meta-Heuristic And Brute-Force Search Algorithms to Cryptanalysis The SDES Encryption Algorithm
For many years, cryptanalysis has been considered as an attractive topic in jeopardizing the security and resistance of an encryption algorithm. The SDES encryption algorithm is a symmetric cryptography algorithm that performs a cryptographic operation using a crypt key. In the world of encryption, there are many search algorithms to cryptanalysis. In these researches, brute force attack algori...
متن کاملLibrary for Systematic Search for Expressions
In our previous work we showed that systematic search approach to inductive functional programming automation makes a remarkably efficient algorithm, but the applicability of the implemented program was limited by the very poor interpreter incorporated. In this paper, we present a library-based implementation of our systematic search algorithm which is supposed to be used with a well-known Hask...
متن کاملContextual equivalence for inductive definitions with binders in higher order typed functional programming
Correct handling of names and binders is an important issue in meta-programming. This paper presents an embedding of constraint logic programming into the αML functional programming language, which provides a provably correct means of implementing proof search computations over inductive definitions involving names and binders modulo α-equivalence. We show that the execution of proof search in ...
متن کامل